package top.lixunda.common.validate.annotation;

import java.lang.annotation.*;

/**
 * @author Xumda
 * @version time:2019/12/9 10:56
 * <p>
 * 用于LocalData
 * 判定最大值，包括设置的值
 * 为空时忽略不进行验证，默认格式为"yyyy-mm-dd" 自动判断格式
 */
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface XumMaxDate {

    /**
     * 最大时间字符串
     */
    String value();

    /**
     * 格式 value的格式
     * 默认 “yyyy-MM-dd HH:mm:ss”
     */
    String format() default "";

    /**
     * 传入参数格式
     * 默认 “yyyy-MM-dd HH:mm:ss”
     */
    String paramFormat() default "";

    /**
     * 是否包括设置的值，默认包括
     */
    boolean include() default true;

    /**
     * 验证不通过时的返回错误信息，属性值将会替换‘#value#’, 属性名将会替换‘#name#’
     */
    String message() default "";

    /**
     * 验证顺序，数值越小首先进行验证
     */
    double order() default -100.0;

}
